home *** CD-ROM | disk | FTP | other *** search
/ Aminet 22 / Aminet 22 (1997)(GTI - Schatztruhe)[!][Dec 1997].iso / Aminet / dev / e / amigae33a.lha / E_v3.3a / Src.lha / Src / Afc / Hardsprite_Example.e < prev    next >
Text File  |  1997-09-09  |  2KB  |  73 lines

  1. /*
  2.  
  3.   $VER: HardSprite Example 1 - (C)Copyright Amiga Foundation Classes
  4.  
  5.   Written By: Andrea Galimberti
  6.  
  7.   This code is Public Domain
  8.  
  9.  
  10.  
  11. */
  12.  
  13. MODULE 'AFC/hardsprite',
  14.        'AFC/explain_exception',
  15.        'intuition/screens'
  16.  
  17.  
  18.  
  19. PROC main() HANDLE
  20.   DEF scr=NIL:PTR TO screen
  21.   DEF vp, spr:PTR TO hardsprite
  22.   DEF x,y,dx,dy
  23.  
  24.   NEW spr.hardsprite(2)  -> allocate sprite number 2 (IF available)
  25.  
  26.   spr.image(15,[$0180,$0000,
  27.                 $03C0,$0000,
  28.                 $07E0,$0000,
  29.                 $0FF0,$0000,
  30.                 $1FF8,$0180,
  31.                 $3FFC,$03C0,
  32.                 $7FFE,$07E0,
  33.                 $FFFF,$0FF0,
  34.                 $7FFE,$07E0,
  35.                 $3FFC,$03C0,
  36.                 $1FF8,$0180,
  37.                 $0FF0,$0000,
  38.                 $07E0,$0000,
  39.                 $03C0,$0000,
  40.                 $0180,$0000]:INT) -> the LIST must be OF INT type
  41.  
  42.  
  43.   scr:=OpenScreenTagList(NIL,[SA_TOP,0,
  44.                               SA_LEFT,0,
  45.                               SA_WIDTH,320,
  46.                               SA_HEIGHT,256,
  47.                               SA_DEPTH,5,
  48.                               SA_TITLE,'Sprite Test',
  49.                               NIL,NIL]
  50.                         )
  51.   IF scr=NIL THEN Raise("scr")
  52.   vp:=scr.viewport
  53.  
  54.   x:=36; y:=0
  55.   dx:=1; dy:=1
  56.  
  57.   spr.changeImage(vp)
  58.   spr.move(vp,x,y)
  59.   REPEAT
  60.     x:=x+dx; y:=y+dy
  61.     IF (x=304) OR (x=0) THEN dx:=-dx
  62.     IF (y=240) OR (y=0) THEN dy:=-dy
  63.     spr.move(vp,x,y)
  64.     WaitTOF()
  65.   UNTIL Mouse()
  66.  
  67. EXCEPT DO
  68.   END spr
  69.   IF scr THEN CloseScreen(scr)
  70.   explain_exception()
  71. ENDPROC
  72.  
  73.